SPB Git

spb/autoscholar

Public
958 B · 26 lines typescript
1import { audit, transition } from "@autoscholar/core";2import { handler, json } from "@/lib/server/api";3import { db } from "@/lib/server/db";4import { requireAdmin } from "@/lib/server/session";56export const runtime = "nodejs";78/** Re-runs the deterministic quality gates on the existing artifacts (e.g. after a gate policy fix). */9export const POST = handler(async (req, { params }) => {10  const sess = await requireAdmin(req, { mutation: true });11  const { runId } = (await params) as { runId: string };12  const run = await db().transaction(async (tx) => {13    const r = await transition(tx, runId, "quality_check", {14      actor: `admin:${sess.userId}`,15      reason: "re-evaluation requested",16      expectFrom: ["quality_failed"],17    });18    await audit(tx, { type: "admin", id: sess.userId, ip: sess.ip }, "quality.reevaluate", {19      type: "run",20      id: runId,21    });22    return r;23  });24  return json({ ok: true, status: run.status });25});26
Files · main
Menu

Theme